Public key encryption is currently a popular technique for secure network communications. Public key encryption utilizes “one-way functions” that are relatively simple for computers to calculate, but difficult to reverse calculate. In particular, a one way function ƒ(x) is relatively easy for a computer to calculate given the variable x, but calculating x given f(x) is difficult for the computer, although not necessarily impossible. Some one way functions can be much more easily reverse calculated with the assistance of particular “trap door” information, i.e., a key. Public key cryptography utilizes such one-way functions in a two-key system in which one key is used for encryption and the other key is used for decryption. In particular, the one-way function is a “public key” which is openly advertised by Node A for the purposes of sending encrypted messages to Node A. The trap door key is a “private key” which is held in confidence by Node A for decrypting the messages sent to Node A. For two-way encrypted communications each node utilizes a different public key and a different private key. One advantage of this system is that secure key distribution is not required. However, advances in the capabilities of computers tend to erode the level of security provided by public key encryption because the difficulty of reverse calculating the one-way function decreases as computing capabilities increase.
It is generally accepted in the field of cryptology that the most secure encryption technique is the Vernam cipher, i.e., one-time pad. A Vernam cipher employs a key to encrypt a message that the intended recipient decrypts with an identical key. The encrypted message is secure provided that the key is random, at least equal to the message in length, used for only a single message, and known only to the sender and intended receiver. However, in modern communication networks the distribution of Vernam cipher keys is often impractical, e.g., because the keys can be quite long and key distribution itself is subject to eavesdropping.
One technique for secure key distribution is known as Quantum Key Distribution (“QKD”). Particular Quantum Key Distribution protocols such as BB84 enable secure key exchange between two devices by representing each bit of a key with a single photon. Photons may be polarization-modulated in order to differentiate between logic 1 and logic 0. Distribution of the quantum keys is secure because, in accordance with the laws of quantum physics, an eavesdropper attempting to intercept the key would introduce detectable errors into the key since it is not possible to measure an unknown quantum state of a photon without modifying it. However, the network resources required to implement QKD are relatively costly. In particular, each network device that implements current QKD techniques requires a photon source and a photon detector.